package vmo;

import java.nio.ByteBuffer;

import shared.Vec2f;

// 0 is south

//4 is left

//8 is up

//12 is right

public abstract class Actor {

	byte m_type;
	public byte getType()
	{
		return m_type;
	}
	public ActionWheel m_wheel;
	public boolean m_visible;

	public Collision_Interface m_interface;
	public Actor_RUI m_rui;
	
	public abstract int getLayer();
	public abstract Vec2f getPosition();
	public abstract boolean hasPart(int part);
	public abstract int getSprite(int part);
	public abstract byte []getColor(int part);
	public abstract void Update(float dt);
	public abstract byte getFacing();
	public abstract void setPos(Vec2f p, byte l);
	public abstract short getUID();
	public abstract void LoadRecord(int offset, byte [] array, Vec2f p, int z);
	public abstract byte getAtype();
	public abstract void Encode(ByteBuffer buffer);
	public abstract Vec2f getPriorPos(int v);
	public abstract void setPrior();
}
